package com.nanjia.boot.warehouse.model.form;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;

import java.io.Serial;
import java.io.Serializable;

/**
 * 仓库信息表单对象
 *
 * @author 周洋
 * @since 2025-07-04 15:08
 */
@Getter
@Setter
@Schema(description = "仓库信息表单对象")
public class WarehouseForm implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "仓库ID")
    private Integer id;

    @Schema(description = "仓库名称")
    @NotBlank(message = "仓库名称不能为空")
    @Size(max=10, message="仓库名称长度不能超过10个字符")
    private String warehoustName;

    @Schema(description = "仓库电话")
    @Size(max=20, message="仓库电话长度不能超过20个字符")
    private String warehousePhone;

    @Schema(description = "仓库联系人")
    @NotBlank(message = "仓库联系人不能为空")
    @Size(max=10, message="仓库联系人长度不能超过10个字符")
    private String contact;

    @Schema(description = "省")
    @NotNull(message = "省不能为空")
    private String province;

    @Schema(description = "市")
    @NotNull(message = "市不能为空")
    private String city;

    @Schema(description = "区")
    @NotNull(message = "区不能为空")
    private String distrct;

    @Schema(description = "仓库地址")
    @NotBlank(message = "仓库地址不能为空")
    @Size(max=100, message="仓库地址长度不能超过100个字符")
    private String address;

    @Schema(description = "仓库状态：0禁用，1启用")
    @NotNull(message = "仓库状态：0禁用，1启用不能为空")
    private Integer warehouseStatus;


}
